<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vue测试.html</title>
    <!--导入js package-->
    <script type="text/javascript" src="../01-vue_js/vue.js"></script>
</head>
<body>
<div id="root">
    <h2>人员列表</h2>
    <input type="text" placeholder="请输入名字" v-model="keyWord">
    <ul>
        <li v-for="(p,index) of filterPersons" :key="index">姓名：{{p.name}} -- 年龄：{{p.age}} {{p.sex}}</li>
    </ul>
</div>

<script type="text/javascript">
    // 关闭开发环境的警告提示
    Vue.config.productionTip = false
    // 创建vue的对象
    new Vue({
        el: '#root',
        data: {
            keyWord: "",
            persons: [
                {id: '001', name: '马冬梅', age: '20', sex: '女'},
                {id: '002', name: '周冬雨', age: '18', sex: '女'},
                {id: '003', name: '周杰伦', age: '22', sex: '男'},
                {id: '004', name: '温兆伦', age: '29', sex: '男'},
            ],
            filterPersons: [],
        },
        watch: {
            keyWord: {
                immediate: true,// 默认行为执行立即执行
                handler(val) {
                    console.log("keyword 改为了:", val)
                    this.filterPersons = this.persons.filter((p) => {
                        return p.name.indexOf(val) !== -1
                    })
                }
            }
        },
        methods: {}
    })
</script>
</body>
</html>